package org.cloud.simple.helloworld;

import java.util.Random;

import org.apache.commons.lang3.RandomUtils;

public class RandomUtil {

    private static String[] digital = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};

    private static String[] as = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
            "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m",
            "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
            "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M",
            "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};

    private static Random random = new Random();

    /**
     * 随机数字
     * @param len 长度
     * @return
     */
    public static String randomDigital(int len){
        StringBuffer ran = new StringBuffer(len);
        for(int j=0; j<len; j++) {
            ran.append(digital[9 % (random.nextInt(8)+1)]);
        }
        return ran.toString();
    }

    /**
     * 随机密码
     * @param len 长度
     * @return
     */
    public static String randomPwd(int len) {
        StringBuffer ran = new StringBuffer(len);
        long time = System.currentTimeMillis();
        for(int j=0; j<len; j++) {
            long s = (time+j)%3;
            ran.append(as[RandomUtils.nextInt(s == 1 ? 10 : 0, s == 0 ? 9 : as.length - 1)]);
        }
        return ran.toString();
    }

}
